package com.qiang.manager.dao;

import com.qiang.manager.domain.Student;

import java.lang.reflect.Array;
import java.util.ArrayList;

public class StudentDao {
    private static ArrayList<Student> array = new ArrayList<Student>();

    //用static创建信息，方便检查
    static {
        Student stu1 = new Student("001", "猪八戒", 199, "高老庄");
        Student stu2 = new Student("002", "孙悟空", 200, "水帘洞");

        //添加到集合中
        array.add(stu1);
        array.add(stu2);
    }

    //删除，修改学生信息，需要根据id找到索引位置，然后根据索引删除或者修改信息
    //index方法
    public int getIndex(String id) {

        int index = -1;
        for (int i = 0; i < array.size(); i++) {
            //得到了st.get[i],也就是每个学生
            Student student = array.get(i);
            //通过比较键盘录入的id和集合里面的id比较，是否符合条件
            if (student != null && (student.getId().equals(id))) {
                index = i;
                break;
            }
        }
        return index;
    }

    //添加学生信息,需要返回值是否添加成功，boolean类型
    public boolean addStduant(Student st) {
        array.add(st);
        return true;
    }


    //删除学生信息
    //根据索引删除
    public void deleteStudent(String id) {
        int index = getIndex(id);
        array.remove(index);
    }

    //修改学生信息
    //根据索引修改
    public void updateStudent(String id, Student newst) {
        int index = getIndex(id);
        array.set(index, newst);
    }

    //查看学生信息
    public Student[] findStudent() {
        //创建学生对象
        Student[] students = new Student[array.size()];
        for (int i = 0; i < students.length; i++) {
            //得到了students[i]
            students[i] = array.get(i);
        }
        //遍历集合，返回学生数组
        return students;
    }


}
